//package com.example.rocketmq_demo.impl;
//
//import com.example.rocketmq_demo.entity.RocketMqMsgDto;
//import lombok.extern.slf4j.Slf4j;
//import org.apache.rocketmq.client.producer.SendCallback;
//import org.apache.rocketmq.client.producer.SendResult;
//import org.apache.rocketmq.spring.core.RocketMQTemplate;
//import org.springframework.messaging.support.MessageBuilder;
//import org.springframework.stereotype.Service;
//
//import javax.annotation.Resource;
//
//@Slf4j
//@Service
//public class RocketMqServiceImpl implements RocketMqService {
//
//    @Resource
//    private RocketMQTemplate rocketMQTemplate;
//
//    @Override
//    public void send(RocketMqMsgDto dto) {
//        log.info("send发送消息到mqMsg={}", dto);
//        rocketMQTemplate.send(dto.getTopic() + ":" + dto.getTags(),
//                MessageBuilder.withPayload(dto.getContent()).build());
//    }
//
//    @Override
//    public void asyncSend(RocketMqMsgDto dto) {
//        log.info("asyncSend发送消息到mqMsg={}", dto);
//        rocketMQTemplate.asyncSend(dto.getTopic() + ":" + dto.getTags(), dto.getContent(),
//                new SendCallback() {
//                    @Override
//                    public void onSuccess(SendResult sendResult) {
//                        // 成功不做日志记录或处理
//                    }
//                    @Override
//                    public void onException(Throwable throwable) {
//                        log.info("mqMsg={}消息发送失败", dto);
//                    }
//                });
//    }
//
//    @Override
//    public void syncSendOrderly(RocketMqMsgDto dto) {
//        log.info("syncSendOrderly发送消息到mqMsg={}", dto);
//        rocketMQTemplate.sendOneWay(dto.getTopic() + ":" + dto.getTags(), dto.getContent());
//    }
//
//}
